home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-04
/
422mods.zip
/
MAYOR02A.422
< prev
next >
Wrap
Text File
|
1993-03-25
|
9KB
|
255 lines
The Mayor02a.mod Update!
Mr. Gigglε≤ #1 @8396 7[4The Mayor7]
2Tuesday, March 16, 1993 1 1:32 P.M. 7[0EST7]0
┌────────────────────────────────────────────────────────────────────────────┐
│ Mod Name: Mayor02a.MOD Mod Author: #1 @8396 WWIVnet │
│ #1 @8396 ICENet │
│ Difficulty: Easier than it looks! Date: March 11, 1993 │
│ WWIV version: v4.21a-v4.22+ │
│ Description: Allow Certain users to page you at ANY time of the day. │
│ Files: BBS.C, FCNS.H, BBSUTL.C, VARS.H, LILO.C, CONIO.C, VARDEC.H │
│ Pre-requisite: Helps to have Page mod v2.1 installed which is in │
│ Various3.mod, But I have included the Parts of the mod which are needed. │
└────────────────────────────────────────────────────────────────────────────┘
I logged onto a Local BBS here, and saw that I had access to
the "ANYTIME JEFFY PAGER" (strange guy). I like the idea...So I took bits
and pieces of Robert W. Miller and Tony Geiser's Page Mod v2.1, and derived
my own little 'added extra'.
I would also like to Thank Robert Miller and Tony Geiser (Goose) for
one helluva Paging mod! I love it, my users love it, and thats all that
matters!
1New Version Update!:0 Well, this new version will allow you to set your
anytime pager on an AR instead of SL, which makes things a LOT easier. I am
using code that someone sent me over the net to set the AR'S and DAR'S up
really easily. I don't know who gave me this mod, and I am sorry for it, but
its in there, and I am giving credit to this person, If I can Find them! I
6Think 0it was JAFO, so if it was...there's you name for credit! :)
/*===========================================================================*/
/********Legend********/
/* == Existing code */
/* ++ Add the mod */
/* =+ Change code */
/**********************/
Step 1: BACK UP 'DEM SOURCES!!!! I don't need to tell you guys this,
You should know by now, I know I learned the hard way! :)
/*===========================================================================*/
Step 2: Open up VARS.H and insert page_reqs; into the Int and Extern in
Sections.
/*===========================================================================*/
Step 3: Close up VARS.H and open up VARDEC.H. Stick this chunk in there:
== #define UPPER_ONLY 2
== #define ALL 4
== #define SET 8
==
==
++ /* AR's and DAR's */
++
++ #define AR_A 0x0001
++ #define AR_B 0x0002
++ #define AR_C 0x0004
++ #define AR_D 0x0008
++ #define AR_E 0x0010
++ #define AR_F 0x0020
++ #define AR_G 0x0040
++ #define AR_H 0x0080
++ #define AR_I 0x0100
++ #define AR_J 0x0200
++ #define AR_K 0x0400
++ #define AR_L 0x0800
++ #define AR_M 0x1000
++ #define AR_N 0x2000
++ #define AR_O 0x4000
++ #define AR_P 0x8000
++
++
++ #define DAR_A 0x0001
++ #define DAR_B 0x0002
++ #define DAR_C 0x0004
++ #define DAR_D 0x0008
++ #define DAR_E 0x0010
++ #define DAR_F 0x0020
++ #define DAR_G 0x0040
++ #define DAR_H 0x0080
++ #define DAR_I 0x0100
++ #define DAR_J 0x0200
++ #define DAR_K 0x0400
++ #define DAR_L 0x0800
++ #define DAR_M 0x1000
++ #define DAR_N 0x2000
++ #define DAR_O 0x4000
++ #define DAR_P 0x8000
++
==
== struct line {
== char text[160];
== struct line *prev,*next;
== };
Now save it and Close it up!
/*===========================================================================*/
Step 4: Now search for void getuser() in LILO.C and add the following at the
top following the variable declarations:
page_reqs=0;
it should be placed just before this line:
thisuser.sysstatus &= (~sysstatus_ansi);
/*===========================================================================*/
Step 5: Open BBS.C and find Void Mainmenu(). Then go down till you find
any of the case statements, (I like to be orginized because it helps
with modding, so I put things in alphabetical order or symbol with
symbol).
== case '!':
== helpl=14;
== if (!cs())
== return;
== nl();
== nl();
== pl("Enter user's name or number.");
== outstr(":");
== input(s1,30);
== i=finduser1(s1);
== if (i>0) {
== sysoplog("@ Validated user");
== valuser(i);
== } else
== pl("Unknown user.");
== break;
++ case '&':
++ if (thisuser.ar & (AR_P)) { /* NOTE 1*/
++ reqchat2();
++ break;
++ } else
++ break;
== case '.':
== helpl=26;
== do_chains();
== break;
/*===========================================================================*/
Step 6: Close up BBS.C and open up BBSUTL.C and look for Void Reqchat().
Add this entire void Right after it.
== nl();
== strcpy(irt,"Tried Paging.");
== imail(1,0);
== }
== }
/*ANYTIME CHAT MOD begin block copy*/
void reqchat2()
{
int ok,count,k,abtchat;
char s[81],ch;
nl();
nl();
printfile("ANYCHAT");
pausescr();
prt(2,"Reason: ");
mpl(70);
inputl(s,70);
if (s[0]) {
strcpy(chatreason,"Chat: ");
strcat(chatreason,s);
chatcall=1;
nl();
sysoplog(chatreason);
for (ok=strlen(chatreason); ok<80; ok++)
chatreason[ok]=32;
chatreason[80]=0;
topscreen();
nl();
page_reqs++;
if (page_reqs<=90)
prt(2,"Sysop page will end in 30 seconds. Press [SPACE] to abort.");
nl(); nl();
prt(1,"Paging Dave."); /*Change name to suit*/
count=0;
abtchat=0;
while ((count<60) && (!(abtchat)) && (page_reqs))
{
count ++;
prt(1,".");
if (chatcall) sound(2500); delay(125);
if (chatcall) sound(2600); delay(125);
if (chatcall) sound(2500); delay(125);
if (chatcall) sound(2600); delay(125);
ch=inkey();
switch (ch) {
case 3:
case 24:
case 32:
abtchat=1;
break;
}
}
}
}
/*ANYTIME CHAT MOD Stop block copy now*/
/*===========================================================================*/
Steop 7: Now Close BBSUTL.C and load up the CONIO.C file and the following
line to the end of the variable declarations at the beginning of the file.
extern int page_reqs; /*PMv2.1 - add*/
/*===========================================================================*/
Step 8: While still in CONIO.C search for void skey(char ch) and make the
following additions or changes:
== case 62: /* F4 */
== chatcall=0;
++ nosound(); /*PM v2.1 - add*/
== topscreen(0);
== case 68: /* F10 */
== if (chatting==0) {
++ page_reqs=0; /*PM v2.1 - add*/
++ nosound(); /*PM v2.1 - add*/
== if (syscfg.sysconfig & sysconfig_2_way)
== case 103: /* Ctrl-F10 */
=+ if (chatting==0) { /*PM v2.1 - change*/
++ page_reqs=0; /*PM v2.1 - add*/
++ nosound(); /*PM v2.1 - add*/
== chat1("",0);
=+ } else /*PM v2.1 - change*/
== chatting=0;
/*===========================================================================*/
Step 9: Save and Recompile. I do it by typing Make, but you may like ALT-F9
better, Its up to you. Next re-run INIT and Turn off The Beep for
Chat option; otherwise you will get the old style paging on top of
the new pager. HOWEVER, If you do not have Page Mod v2.1 installed,
you must leave the beep for chat option. Finally you MUST create a
file in your gfiles directory called anychat.msg or anychat.ans. I
made anychat.msg in wwiv color codes to not worry about two files
cluttering up space.
/*===========================================================================*/
Step 10: Now you must create a file in your gfiles directory called
ANYCHAT.ans and ANYCHAT.msg. I make ANYCHAT.MSG because I don't want to
bother with the ansi. Here is a sample of my ANYCHAT.MSG:
1WOW!!! You can Page 2Dave 1 6ANY 1 Time you d*mn well please!!!! Now don't0
1you feel special! Ok...Get ready! Cause I am gonna ask you for a reason (3andi0
t better be good!1).0
Ok...here we go.....
/*===========================================================================*/
If you have any questions, suggestions or problems, Please inform me
at any of these locations:
1 @8396 WWIVnet
1 @8396 ICEnet
1 @8396 Insanity Net
/*===========================================================================*/
1DÆVε0
9 The SysOp!0